using System;
using System.Collections.Generic;
using Beaker.OpenCube.Render.Maths;

namespace Beaker.OpenCube.Render.Sampling
{
	public sealed class RandomSampler
		: Sampler
	{
		public RandomSampler( int sampleCount )
			: base( sampleCount )
		{
		}

		public override IEnumerable<Point2> GenerateSamplesSquare( SampleOptions options = SampleOptions.None )
		{
			for( var i = 0; i < SampleCount; i++ )
			{
				yield return
					new Point2(
						Random.NextDouble(),
						Random.NextDouble()
					);
			}
		}
	}
}